home *** CD-ROM | disk | FTP | other *** search
- 100 POKE53280,L:POKE53281,0
- 110 FORT=0TO4:GETA$:NEXT
- 120 L=L+1:IFL=1THENLOAD"CODE MOVER",8,1
- 130 IFL=2THENLOAD"LOAD AT",8,1
- 140 PRINT"[147]";
- 141 DS=4096
- 142 POKE53280,2:POKE53281,0
- 150 CLR
- 160 DIMF$(109),S(20),B(20):N=10:A=0
- 161 PRINT"ENTER DATA DISK THEN PRESS <RETURN>"
- 162 GETA$:IFA$<>CHR$(13)THEN162
- 163 PRINT"[159]LOADING DIRECTORY"
- 164 POKE882,1:POKE883,0:POKE884,192:POKE860,ASC("$"):SYS820
- 165 GOTO3000
- 170 CLOSE1:PRINT"[158]PROG NO.";A+1:INPUT"ENTER NAME";F$(A):IFF$(A)=""THEN220
- 180 INPUT"[159]ENTER BLOCKS";B(A):OPEN1,8,0,F$(A):GET#1,A$:GET#1,B$
- 190 IFA$=""THENA$=CHR$(0)
- 200 L=ASC(A$):IFB$=""THENB$=CHR$(0)
- 210 B=ASC(B$):S(A)=L+B*256:A=A+1:PRINT"START=";S(A-1):GOTO170
- 220 GOSUB450
- 230 A=A-1:PRINT"ENTER START ADDRESS TO RUN":INPUTB
- 240 POKE2064,76:POKE252,B-(INT(B/256))*256:POKE253,INT(B/256)
- 241 PRINT"[154]ENTER FILE NAME TO SAVE UNDER":INPUTDM$
- 242 PRINT"[159]WHAT SHALL I DO WHILE DECOMPACTING?"
- 243 PRINT"1....WOBBLE SCREEN"
- 244 PRINT"2....FLASH SCREEN"
- 245 PRINT"3....NOTHING"
- 246 INPUTJ
- 247 IFJ=1THENPOKE2394,22:POKE2395,208:POKE2400,22:POKE2401,208
- 248 IFJ=2THENPOKE2394,33:POKE2395,208:POKE2400,33:POKE2401,208
- 249 IFJ=3THENPOKE2394,0:POKE2395,208:POKE2400,0:POKE2401,208
- 250 GOSUB570:N=10:FORT=0TOA:N=N+B(T):NEXT
- 260 FORT=ATO0STEP-1
- 270 POKE2067+T*3,N:POKE2068+T*3,INT(S(T)/256):POKE2069+T*3,INT(S(T)/256)+B(T)
- 280 N=N-B(T):NEXT
- 290 POKE2067+T*3,0:N=10
- 300 FORD=0TOA
- 310 L=LEN(F$(D)):POKE882,L:FORT=1TOL:POKE860+T-1,ASC(MID$(F$(D),T,1)):NEXT
- 320 POKE883,S(D)-(INT(S(D)/256)*256):POKE884,N
- 330 PRINT"PACKING ";F$(D)
- 340 SYS820:N=N+B(D):NEXT
- 350 POKE251,N:N=N-B(D)
- 360 T=0
- 370 FORD=ATO0STEP-1:N=N-B(D)
- 371 Z=0:FORG=1TOB(D)-1:IFN+G=INT(S(D)/256)THENZ=G:PRINT"*** ***"
- 372 NEXT:IFZ<>0THEN2000
- 380 POKE2067+T*3,N:POKE2068+T*3,INT(S(D)/256):POKE2069+T*3,INT(S(D)/256)+B(D)
- 390 T=T+1:NEXT
- 400 POKE2067+T*3,0
- 410 POKE2064,76:POKE2065,PEEK(252):POKE2066,PEEK(253)
- 411 SYS57812"@0:"+DM$,8
- 412 PRINT"[147]ENTER DISK TO SAVE ";DM$
- 413 PRINT"[158]THEN PRESS RETURN"
- 414 INPUT"[144]";A$
- 420 POKE193,1:POKE194,8
- 430 POKE174,0:POKE175,PEEK(251):SYS62957
- 440 RUN140
- 450 PRINT"[147]";
- 460 FORT=0TOA-1:IFT+1<=9THENPRINT" ";
- 470 PRINTT+1,F$(T),B(T);S(T):NEXT
- 480 PRINT"[159]EDIT ANY? (PRESS NUMBER OR X)"
- 490 INPUTA$:IFA$="X"THENRETURN
- 500 IFA$=""THEN450
- 501 IFVAL(A$)<=0THEN450
- 510 T=VAL(A$):T=T-1:PRINT"[147]";
- 520 PRINT"BLOCKS ";B(T)
- 530 INPUT"BLOCKS";B(T)
- 540 PRINT"[159]START ";S(T)
- 550 INPUT"START";S(T)
- 560 GOTO 460
- 570 PRINT"[147]CHECKING POSSIBLE CONFIGURATIONS ..."
- 571 PRINT"";
- 572 FORT=0TOA-1:IFT+1<=9THENPRINT" ";
- 573 PRINTT+1,F$(T),B(T);S(T):NEXT
- 580 CV$="[165][212][199][194][221][200][217][167]"
- 590 CV=1
- 600 IFA=0THENFORCV=1TO312STEP22:GOSUB620:NEXT:RETURN
- 610 ZX=49152:GOTO670
- 620 IFCV>312THENCV=1
- 630 REMPRINT"[176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][178][178][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]"
- 640 PRINT"[151]";SPC(CV/8);" ";MID$(CV$,CV-(INT(CV/8)*8)+1,1)
- 650 PRINT"[155][173][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][177][177][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189]"
- 660 RETURN
- 670 FORT=0TO255:POKEZX+T,33:NEXT:CV=CV+5:GOSUB620:OL=0
- 680 FORT=0TO7:POKEZX+T,33:NEXT:CV=CV+5:GOSUB620
- 690 FORT=128TO191:POKEZX+T,33:NEXT:CV=CV+5:GOSUB620
- 700 FORT=191TO255:POKEZX+T,33:NEXT:CV=CV+5:GOSUB620:NO=10
- 710 FORT=0TOA:FORD=0TOB(T):N=INT(S(T)/256)+D:CV=CV+1:NO=NO+1:GOSUB620:POKE49152+N,T
- 720 NEXTD,T
- 730 PRINT"[155]MAPPED OUT SINGULAR MEMORY LOCATIONS ";
- 740 IFNO>128THENPRINT"[155]OUT OF MEMORY SORRY!":PRINT"PRESS RETURN TO RESET"
- 750 IFNO>128THENINPUT"[144]";A$:SYS64738
- 760 N=10
- 770 FORT=0TOA:FORD=0TOB(T):N=INT(S(T)/256)+D:CV=CV+1:GOSUB620:P=PEEK(49152+N)
- 780 IFP<>TTHENPRINT"OVER LAP AT PROG "
- 790 IFP<>TTHENPRINT"OVER LAP AT PROG";T;:OL=OL+1:PRINT"WITH";
- 800 IF P<>T AND P<255THENPRINTP
- 810 IF P<>T AND P=255THENPRINT:PRINT"THE PACKED SOURCE"
- 820 CV=CV+.5:GOSUB620
- 830 NEXTD,T:SW=0
- 840 FORT=A-1TO0STEP-1:CV=CV+1:GOSUB620
- 850 IFS(T)<=S(T+1)THEN900
- 860 SW=1
- 870 N=B(T+1):B(T+1)=B(T):B(T)=N
- 880 N=S(T+1):S(T+1)=S(T):S(T)=N
- 890 N$=F$(T+1):F$(T+1)=F$(T):F$(T)=N$
- 900 NEXT
- 910 IFSW=1THENSW=0:GOTO840
- 920 N=CV:FORCV=NTO312STEP3:GOSUB620:PRINT"[147]RIGHT THATS THAT FINISHED"
- 930 PRINT"[155]ALL SWAPED AND READY TO GO"
- 940 PRINT"ITS THE BEST I CAN DO FOR YOUR PROGRAM"
- 950 PRINT"IF IT DOES NOT WORK TRY SPLITING UP SOMEFILES OR USEING PACKER II"
- 960 GOSUB980
- 970 RETURN
- 980 PRINT"";
- 990 FORT=0TOA:IFT+1<=9THENPRINT" ";
- 1000 PRINTT+1,F$(T),B(T);S(T):NEXT
- 1010 RETURN
- 2000 POKE2067+T*3,N+Z:POKE2068+T*3,INT(S(D)/256)+Z
- 2010 POKE2069+T*3,INT(S(D)/256)+B(D):T=T+1
- 2011 PRINT"********"
- 2040 POKE2067+T*3,N:POKE2068+T*3,INT(S(D)/256)
- 2050 POKE2069+T*3,INT(S(D)/256)+Z:GOTO390
- 3000 PRINT"[159][147]";
- 3010 OPEN1,8,0,"$"
- 3020 Y=0:YA=49152+32:DIMZ(109)
- 3021 FORT=0TO109:F$(T)="QUIT>>>>>>>>>>>":NEXT
- 3030 F$(Y)="":X=0:Z(Y)=PEEK(YA)+PEEK(YA+1)*256:YA=YA+3:L=PEEK(YA):YA=YA+2
- 3031 IFPEEK(YA)=34THENYA=YA+1
- 3032 B=Z(Y)
- 3033 IFZ(Y)=0THENZ(Y)=1
- 3038 IFLEN(F$(Y))>18THENY=Y-2:GOTO3100
- 3039 IFPEEK(YA)=0ANDPEEK(YA+1)=0THENY=Y-2:GOTO3100
- 3040 F$(Y)=F$(Y)+CHR$(PEEK(YA+X)):X=X+1:IFCHR$(PEEK(YA+X))<>CHR$(34)THEN3038
- 3041 PRINT"[147]THINKING...";99-Y
- 3050 Y=Y+1:YA=YA+21
- 3051 IFY>99THENY=99:GOTO3100
- 3060 YA=YA+1:IFPEEK(YA)<>0THEN3060
- 3070 IFPEEK(YA+1)=0THENY=Y-2:GOTO3100
- 3080 YA=YA+3
- 3082 GOTO3030
- 3083 FORT=0TO80:POKE1024+T,PEEK(49152+32+T):NEXT:FORT=0TOY+1:POKE49152+T,0:NEXT
- 3100 Y=Y+1:V=0:F$(Y+1)=F$(101):PRINT"[147]":DIMJ$(20)
- 3101 FORT=0TOY+1:POKE49152+T,0:NEXT
- 3110 PRINT"[159]";:FORT=0TO9:IFPEEK(49152+T+V)=1THENPRINT"";
- 3120 PRINT" ";F$(T+V);"[146]";" ":NEXT
- 3130 GETA$:IFA$="[145]"THENV=V-1
- 3131 PRINT"[151]>[155]>[155]<[151]<"
- 3140 IFA$=""THENV=V+1:IFV>Y+1THENV=Y+1
- 3150 IFV<0THENV=0
- 3151 IFA$=" "ANDV=Y+1THEN3200
- 3160 IFA$=" "THENIFPEEK(49152+V)=0ANDA<19THENPOKE49152+V,1:A=A+1:GOTO3110
- 3161 IFA$=" "THENIFPEEK(49152+V)=0ANDA>=19THENPRINT"NO ROOM LEFT":GOTO3200
- 3170 IFA$=" "THENIFPEEK(49152+V)=1THENPOKE49152+V,0:A=A-1:GOTO3110
- 3180 IFA$=""THEN3130
- 3190 GOTO 3110
- 3200 A=0:FORT=0TOY:IFPEEK(49152+T)=1THENJ$(A)=F$(T):B(A)=Z(T):A=A+1
- 3201 NEXT:CLOSE1
- 3210 FORT=0TOA-1:F$(T)=J$(T):OPEN1,8,0,F$(T):GET#1,A$:IFA$=""THENA$=CHR$(0)
- 3220 C=ASC(A$):GET#1,A$:IFA$=""THENA$=CHR$(0)
- 3230 CLOSE1:B=ASC(A$):S(T)=C+B*256:NEXT
- 3240 GOTO220
-